html, body, form, fieldset, legend, h1, ul {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 300;
}

form {
    width: 800px; margin: 30px auto;
    background-color: #DCD4CE;
    border: 1px solid #423021;
    box-shadow: 2px 2px 10px #666;
}

h1 {
    background-color: #BEB0A3;
    border-bottom: 1px solid #423021;
    font-size: 2em; font-weight: 600;
    padding: 5px 15px;
    text-shadow: 1px 1px 0px #fff;
}

fieldset {
    border: none; margin: 20px 20px;
    border-bottom: 1px dashed #BEB0A3; padding-bottom: 20px;
}

legend {
    display: block; font-weight: bold; font-size: 1.25em;
    width: 100%; padding-bottom: 10px;
    text-shadow: 1px 1px 0px #fff;
}

input:not([type=submit]), select {
    border: 1px solid #999;
    padding: 2px;
}

input:required, select:required {
    background-color: lightyellow;
}

form.invalid input:invalid, form.invalid select:invalid,
form.invalid input.invalid, form.invalid select.invalid {
    background-color: #FFD4D4;
    border: 1px solid maroon;
}

ul {
     list-style-type: none;
 }

li {
    display: block; width: 380px; float: left;
}

li div {
    width: 130px; float: left; margin-top: 5px;
    color: #444; font-size: 0.8em; font-weight: 300;
}

li label.required div {
    font-weight: bold;
}

li label span {
    font-size: 11px; font-weight: 300; color: #333;
}

li input, li select {
    width: 225px; margin-bottom: 5px;
    font-size: 0.9em;
}

span.twitter_prefix { color: #666; font-size: .95em; font-weight: bold; }

input.city { width: 80px; margin-right: 0; }
input.state { width: 35px; margin-right: 0; }
input.zip { width: 90px; }
input.twitter { width: 206px; }

table {
    width: 100%;
    border: 1px solid #705536;
    border-collapse: collapse;
    box-shadow: 1px 1px 10px #666;
}

th, td {
    border: 1px solid #705536;
    padding: 5px 10px;
}

th {
    text-shadow: 1px 1px 0px #000; font-weight: bold;
}


thead th:nth-child(1), thead th:nth-child(2) {
    text-align: left;
}

thead th:nth-child(4), thead th:nth-child(5) {
    text-align: right;
}

tbody tr td {
    background-color: #e5dad2;
}

tbody tr:nth-child(even) td {
    background-color: #fff3e9;
}

tbody td:nth-child(1) {
    width: 110px;
}

tbody td:nth-child(3) {
    width: 60px; text-align: center;
}

td input {
    width: 50px; height: 28px; font-size: 1.1em; text-align: right;
}

tbody td:nth-child(4) {
    width: 60px; text-align: right;
}

tbody td:nth-child(5) {
    width: 80px; text-align: right;
}

th {
    background-color: #614023;
    color: #fff;
}

tfoot td {
    background-color: #BEB0A3;
    text-align: right; font-weight: bold;
    font-size: 1.15em;
    text-shadow: 1px 1px 0px #fff;
}

input[type=month] { width: 110px; }
input.cvv { width: 60px; text-align: right; }

.buttons {
    margin: 15px 20px 10px; text-align: right;
}

input[type=submit], input[type=button] {
    border: 1px solid #423021;
    background-color: #896640;
    color: #fff; padding: 6px 10px;
    border-radius: 6px;
    text-shadow: 1px 1px 0px #000;
    font-size: 0.9em; cursor: pointer;
    font-weight: bold;
    background-image: -webkit-linear-gradient(top, #896640 0%, #705536 100%);
    background-image: -moz-linear-gradient(top, #896640 0%, #705536 100%);
    background-image: -o-linear-gradient(top, #896640 0%, #705536 100%);
    background-image: -ms-linear-gradient(top, #896640 0%, #705536 100%);
    background-image: linear-gradient(to bottom, #896640 0%, #705536 100%);
}

input[type=submit]:active, input[type=button]:active {
    background-color: #705536;
    background-image: -webkit-linear-gradient(bottom, #896640 0%, #705536 100%);
    background-image: -moz-linear-gradient(bottom, #896640 0%, #705536 100%);
    background-image: -o-linear-gradient(bottom, #896640 0%, #705536 100%);
    background-image: -ms-linear-gradient(bottom, #896640 0%, #705536 100%);
    background-image: linear-gradient(to top, #896640 0%, #705536 100%);
}

.placeholder {
    color: #999;
}

.month-picker-month { width: 115px; }
.month-picker-year { width: 55px; text-align: right; }